package com.cmc.cloud.cmclink.doc.vo.multimodaltransport.containermanifest;

import javax.validation.Valid;

import org.hibernate.validator.constraints.Length;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

/**
 * 集装箱清单导入列表信息 Request VO
 *
 * @author codegen
 */
@Schema(description = "管理后台 - 集装箱清单导入列表信息 Request VO")
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Valid
public class ContainerManifestImportReqVO extends ContainerManifestImportBaseReqVO {
    @Schema(description = "箱号", requiredMode = Schema.RequiredMode.REQUIRED)
    @Length(max = 12, message = "{ContainerManifestImportReqVO.cntrno.length}")
    private String cntrNo;

    @Schema(description = "铅封号", requiredMode = Schema.RequiredMode.REQUIRED)
    @Length(max = 12, message = "{ContainerManifestImportReqVO.sealNo.length}")
    private String sealNo;

    @Schema(description = "箱型", example = "2")
    @Length(max = 2, message = "{ContainerManifestImportReqVO.cntrtype.length}")
    private String cntrType;

    @Schema(description = "箱尺寸")
    @Length(max = 2, message = "{ContainerManifestImportReqVO.cntrsize.length}")
    private String cntrSize;

    @Schema(description = "重量")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.weight.length}")
    private String weight;

    @Schema(description = "体积")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.measurement.length}")
    private String measurement;

    @Schema(description = "件数")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.quantity.length}")
    private String quantity;

    @Schema(description = "FLE")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.fle.length}")
    private String fle;

    @Schema(description = "内外贸")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.imExTrade.length}")
    private String imExTrade;

    @Schema(description = "目的港")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.delCode.length}")
    private String delCode;

    @Schema(description = "箱主")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.cntrOwner.length}")
    private String cntrOwner;

    @Schema(description = "温度")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.temperature.length}")
    private String temperature;

    @Schema(description = "危规代码")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.imdgCode.length}")
    private String imdgCode;
}
